package cn.tinkling.preferences;

import org.eclipse.jface.preference.*;
import org.eclipse.ui.IWorkbenchPreferencePage;
import org.eclipse.ui.IWorkbench;

import cn.tinkling.Activator;
import cn.tinkling.Constants;

/**
 * This class represents a preference page that is contributed to the
 * Preferences dialog. By subclassing <samp>FieldEditorPreferencePage</samp>, we
 * can use the field support built into JFace that allows us to create a page
 * that is small and knows how to save, restore and apply itself.
 * <p>
 * This page is used to modify preferences only. They are stored in the
 * preference store that belongs to the main plug-in class. That way,
 * preferences can be accessed directly via the preference store.
 */

public class DPxPreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage, TinklingPreferenceConstants, Constants {

	public DPxPreferencePage() {
		super(GRID);
		setPreferenceStore(Activator.getDefault().getPreferenceStore());
		// setDescription("DPx preferences.");
	}

	/**
	 * Creates the field editors. Field editors are abstractions of the common
	 * GUI blocks needed to manipulate various types of preferences. Each field
	 * editor knows how to save and restore itself.
	 */
	public void createFieldEditors() {

		String[][] labelAndValues = new String[DPIS.length][2];
		for (int i = 0; i < DPIS.length; i++) {
			labelAndValues[i][0] = DPIS[i];
			labelAndValues[i][1] = String.valueOf(i);
		}

		addField(new RadioGroupFieldEditor(P_DPI, "\u9ED8\u8BA4DPI:", 1, labelAndValues, getFieldEditorParent(), false));
	}

	public void init(IWorkbench workbench) {
	}

}